load("@prysm//tools/go:def.bzl", "go_library", "go_test")

go_library(
    name = "go_default_library",
    srcs = [
        "attester_protection.go",
        "backup.go",
        "db.go",
        "deprecated_attester_protection.go",
        "eip_blacklisted_keys.go",
        "genesis.go",
        "graffiti.go",
        "import.go",
        "log.go",
        "migration.go",
        "migration_optimal_attester_protection.go",
        "migration_source_target_epochs_bucket.go",
        "proposer_protection.go",
        "proposer_settings.go",
        "prune_attester_protection.go",
        "schema.go",
    ],
    importpath = "github.com/prysmaticlabs/prysm/v5/validator/db/kv",
    visibility = [
        "//cmd:__subpackages__",
        "//validator:__subpackages__",
    ],
    deps = [
        "//async/abool:go_default_library",
        "//async/event:go_default_library",
        "//config/features:go_default_library",
        "//config/fieldparams:go_default_library",
        "//config/params:go_default_library",
        "//config/proposer:go_default_library",
        "//consensus-types/interfaces:go_default_library",
        "//consensus-types/primitives:go_default_library",
        "//encoding/bytesutil:go_default_library",
        "//io/file:go_default_library",
        "//monitoring/progress:go_default_library",
        "//monitoring/tracing:go_default_library",
        "//monitoring/tracing/trace:go_default_library",
        "//proto/prysm/v1alpha1:go_default_library",
        "//proto/prysm/v1alpha1/slashings:go_default_library",
        "//proto/prysm/v1alpha1/validator-client:go_default_library",
        "//time/slots:go_default_library",
        "//validator/db/common:go_default_library",
        "//validator/db/iface:go_default_library",
        "//validator/helpers:go_default_library",
        "//validator/slashing-protection-history/format:go_default_library",
        "@com_github_pkg_errors//:go_default_library",
        "@com_github_prometheus_client_golang//prometheus:go_default_library",
        "@com_github_prysmaticlabs_prombbolt//:go_default_library",
        "@com_github_sirupsen_logrus//:go_default_library",
        "@io_etcd_go_bbolt//:go_default_library",
        "@org_golang_google_protobuf//proto:go_default_library",
    ],
)

go_test(
    name = "go_default_test",
    srcs = [
        "attester_protection_test.go",
        "backup_test.go",
        "deprecated_attester_protection_test.go",
        "eip_blacklisted_keys_test.go",
        "genesis_test.go",
        "graffiti_test.go",
        "import_test.go",
        "kv_test.go",
        "migration_optimal_attester_protection_test.go",
        "migration_source_target_epochs_bucket_test.go",
        "proposer_protection_test.go",
        "proposer_settings_test.go",
        "prune_attester_protection_test.go",
    ],
    embed = [":go_default_library"],
    deps = [
        "//config/fieldparams:go_default_library",
        "//config/params:go_default_library",
        "//config/proposer:go_default_library",
        "//consensus-types/blocks:go_default_library",
        "//consensus-types/primitives:go_default_library",
        "//consensus-types/validator:go_default_library",
        "//crypto/bls:go_default_library",
        "//crypto/hash:go_default_library",
        "//encoding/bytesutil:go_default_library",
        "//proto/prysm/v1alpha1:go_default_library",
        "//testing/assert:go_default_library",
        "//testing/require:go_default_library",
        "//testing/util:go_default_library",
        "//validator/db/common:go_default_library",
        "//validator/slashing-protection-history/format:go_default_library",
        "//validator/testing:go_default_library",
        "@com_github_ethereum_go_ethereum//common:go_default_library",
        "@com_github_ethereum_go_ethereum//common/hexutil:go_default_library",
        "@com_github_sirupsen_logrus//:go_default_library",
        "@com_github_sirupsen_logrus//hooks/test:go_default_library",
        "@io_etcd_go_bbolt//:go_default_library",
    ],
)
